using System;
using System.Collections.Generic;
using System.Text;

namespace LetsDoSomeVariations
{
    /// <summary>
    /// Constants class to store all propertylabels and fieldnames
    /// </summary>
    public static class Constants
    {
        /// <summary>
        /// Feature properties for the LetsDoSomeVariations Feature.
        /// </summary>
        public static class FeatureProperties
        {
            public const string CreateVariations = "CreateVariations";
            public const string CreateHierachyTimeOutMinutes = "CreateHierachyTimeOutMinutes";
            public const string VariationHomeUrl = "VariationHomeUrl";
            public const string SourceVariationTemplateName = "SourceVariationTemplateName";
            public const string AutomaticCreationOfSitesAndPages = "AutomaticCreationOfSitesAndPages";
            public const string RecreateOrDeletedOfTargetPage = "RecreateOrDeletedOfTargetPage";
            public const string UpdateTargetPageWebParts = "UpdateTargetPageWebParts";
            public const string SendEmailNotification = "SendEmailNotification";
            public const string CopyResources = "CopyResources";
            public const string Label = "Label-{0}";
            public const string LabelDisplayName = "Label-{0}-DisplayName";
            public const string LabelDescription = "Label-{0}-Description";
            public const string LabelLanguage = "Label-{0}-Language";
            public const string LabelLocale = "Label-{0}-Locale";
            public const string LabelIsSource = "Label-{0}-IsSource";
        }

        /// <summary>
        /// Fieldnames for the VariationSettings List.
        /// </summary>
        public static class VariationSettingsFields
        {
            public const string ObjectID = "ObjectID";
        }

        /// <summary>
        /// List properties for the VariationSettings List.
        /// </summary>
        public static class VariationSettingsProperties
        {
            public const string SourceVarRootWebTemplatePropertyName = "SourceVarRootWebTemplatePropertyName";
            public const string EnableAutoSpawnPropertyName = "EnableAutoSpawnPropertyName";
            public const string AutoSpawnStopAfterDeletePropertyName = "AutoSpawnStopAfterDeletePropertyName";
            public const string UpdateWebPartsPropertyName = "UpdateWebPartsPropertyName";
            public const string CopyResourcesPropertyName = "CopyResourcesPropertyName";
            public const string SendNotificationEmailPropertyName = "SendNotificationEmailPropertyName";
        }

        /// <summary>
        /// List properties for the VariationLabels List.
        /// </summary>
        public static class VariationLabelProperties
        {
            public const string HierarchyIsCreated = "Hierarchy Is Created";
            public const string Title = "Title";
            public const string Description = "Description";
            public const string FlagControlDisplayName = "Flag Control Display Name";
            public const string Language = "Language";
            public const string Locale = "Locale";
            public const string HierarchyCreationMode = "Hierarchy Creation Mode";
            public const string IsSource = "Is Source";
        }
    }
}
